home *** CD-ROM | disk | FTP | other *** search
/ The Utilities Experience / The Utilities Experience - Volume 1.iso / software / misc / o-z / x-windows / mesa-amiwin / src / list.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-30  |  8.0 KB  |  284 lines

  1. /* list.h */
  2.  
  3. /*
  4.  * Mesa 3-D graphics library
  5.  * Version:  1.2
  6.  * Copyright (C) 1995  Brian Paul  (brianp@ssec.wisc.edu)
  7.  *
  8.  * This library is free software; you can redistribute it and/or
  9.  * modify it under the terms of the GNU Library General Public
  10.  * License as published by the Free Software Foundation; either
  11.  * version 2 of the License, or (at your option) any later version.
  12.  *
  13.  * This library is distributed in the hope that it will be useful,
  14.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  16.  * Library General Public License for more details.
  17.  *
  18.  * You should have received a copy of the GNU Library General Public
  19.  * License along with this library; if not, write to the Free
  20.  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  21.  */
  22.  
  23.  
  24. /*
  25. $Id: list.h,v 1.16 1995/10/29 19:14:19 brianp Exp $
  26.  
  27. $Log: list.h,v $
  28.  * Revision 1.16  1995/10/29  19:14:19  brianp
  29.  * added glPolygonOffsetEXT display list support
  30.  *
  31.  * Revision 1.15  1995/10/14  17:42:34  brianp
  32.  * added glClipPlane, glLightModel, and texture functions
  33.  *
  34.  * Revision 1.14  1995/10/04  19:35:07  brianp
  35.  * replaced gl_save_normal with gl_save_normal3fv and gl_save_normal3f
  36.  *
  37.  * Revision 1.13  1995/08/31  18:34:16  brianp
  38.  * added display list / glScissor support
  39.  *
  40.  * Revision 1.12  1995/08/01  20:53:35  brianp
  41.  * added glPixelZoom support
  42.  *
  43.  * Revision 1.11  1995/07/25  16:41:54  brianp
  44.  * made changes for using CC.VertexFunc pointer
  45.  *
  46.  * Revision 1.10  1995/06/22  14:27:50  brianp
  47.  * added prototypes for gl_save_stencil* functions
  48.  *
  49.  * Revision 1.9  1995/05/22  20:59:34  brianp
  50.  * Release 1.2
  51.  *
  52.  * Revision 1.8  1995/05/19  13:26:50  brianp
  53.  * added display list support for selection/name stack functions
  54.  *
  55.  * Revision 1.7  1995/05/15  15:24:28  brianp
  56.  * added gl_list_index()
  57.  *
  58.  * Revision 1.6  1995/05/10  18:45:04  brianp
  59.  * added glTexImage support
  60.  *
  61.  * Revision 1.5  1995/04/19  13:48:18  brianp
  62.  * renamed occurances of near and far for SCO x86 Unix
  63.  *
  64.  * Revision 1.4  1995/04/08  15:26:55  brianp
  65.  * add gl_save_shademodel
  66.  *
  67.  * Revision 1.3  1995/03/08  15:10:02  brianp
  68.  * added logicop and clear_index functions
  69.  *
  70.  * Revision 1.2  1995/03/04  19:25:29  brianp
  71.  * 1.1 beta revision
  72.  *
  73.  * Revision 1.1  1995/02/24  14:24:47  brianp
  74.  * Initial revision
  75.  *
  76.  */
  77.  
  78.  
  79. #ifndef LIST_H
  80. #define LIST_H
  81.  
  82.  
  83. #include "GL/gl.h"
  84.  
  85.  
  86.  
  87. extern void gl_init_lists( void );
  88.  
  89. extern GLint gl_list_index( void );
  90.  
  91.  
  92. extern void gl_save_accum( GLenum op, GLfloat value );
  93.  
  94. extern void gl_save_alphafunc( GLenum func, GLclampf ref );
  95.  
  96. extern void gl_save_blendfunc( GLenum sfactor, GLenum dfactor );
  97.  
  98. extern void gl_save_begin( GLenum mode );
  99.  
  100. extern void gl_save_bitmap( GLsizei width, GLsizei height,
  101.                 GLfloat xorig, GLfloat yorig,
  102.                 GLfloat xmove, GLfloat ymove,
  103.                 const GLubyte *bitmap );
  104.  
  105. extern void gl_save_clear( GLbitfield mask );
  106.  
  107. extern void gl_save_clearaccum( GLfloat red, GLfloat green,
  108.                     GLfloat blue, GLfloat alpha );
  109.  
  110. extern void gl_save_clearcolor( GLclampf red, GLclampf green,
  111.                     GLclampf blue, GLclampf alpha );
  112.  
  113. extern void gl_save_cleardepth( GLclampd depth );
  114.  
  115. extern void gl_save_clearindex( GLfloat c );
  116.  
  117. extern void gl_save_clearstencil( GLint s );
  118.  
  119. extern void gl_save_clipplane( GLenum plane, const GLfloat *equ );
  120.  
  121. extern void gl_save_color( const GLfloat c[4] );
  122.  
  123. extern void gl_save_colormask( GLboolean red, GLboolean green,
  124.                    GLboolean blue, GLboolean alpha );
  125.  
  126. extern void gl_save_copypixels( GLint x, GLint y,
  127.                 GLsizei width, GLsizei height, GLenum type );
  128.  
  129. extern void gl_save_cullface( GLenum mode );
  130.  
  131. extern void gl_save_depthfunc( GLenum func );
  132.  
  133. extern void gl_save_depthmask( GLboolean mask );
  134.  
  135. extern void gl_save_depthrange( GLclampd nearval, GLclampd farval );
  136.  
  137. extern void gl_save_disable( GLenum cap );
  138.  
  139. extern void gl_save_drawbuffer( GLenum mode );
  140.  
  141. extern void gl_save_drawpixels( GLsizei width, GLsizei height, GLenum format,
  142.                     GLenum type, GLvoid *pixels );
  143.  
  144. extern void gl_save_enable( GLenum cap );
  145.  
  146. extern void gl_save_end( void );
  147.  
  148. extern void gl_save_evalcoord1( GLfloat u );
  149.  
  150. extern void gl_save_evalcoord2( GLfloat u, GLfloat v );
  151.  
  152. extern void gl_save_evalmesh1( GLenum mode, GLint i1, GLint i2 );
  153.  
  154. extern void gl_save_evalmesh2( GLenum mode, GLint i1, GLint i2,
  155.                    GLint j1, GLint j2 );
  156.  
  157. extern void gl_save_evalpoint1( GLint i );
  158.  
  159. extern void gl_save_evalpoint2( GLint i, GLint j );
  160.  
  161. extern void gl_save_fog( GLenum pname, const GLfloat *params );
  162.  
  163. extern void gl_save_frontface( GLenum mode );
  164.  
  165. extern void gl_save_hint( GLenum target, GLenum mode );
  166.  
  167. extern void gl_save_index( GLuint index );
  168.  
  169. extern void gl_save_indexmask( GLuint mask );
  170.  
  171. extern void gl_save_initnames( void );
  172.  
  173. extern void gl_save_light( GLenum light, GLenum pname, const GLfloat *params,
  174.                GLuint numparams );
  175.  
  176. extern void gl_save_lightmodel( GLenum pname, const GLfloat *params );
  177.  
  178. extern void gl_save_linewidth( GLfloat width );
  179.  
  180. extern void gl_save_linestipple( GLint factor, GLushort pattern );
  181.  
  182. extern void gl_save_loadmatrix( const GLfloat *m );
  183.  
  184. extern void gl_save_loadname( GLuint name );
  185.  
  186. extern void gl_save_logicop( GLenum opcode );
  187.  
  188. extern void gl_save_map1( GLenum target, GLfloat u1, GLfloat u2, GLint stride,
  189.               GLint order, const GLfloat *points );
  190.  
  191. extern void gl_save_map2( GLenum target,
  192.               GLfloat u1, GLfloat u2, GLint ustride, GLint uorder,
  193.               GLfloat v1, GLfloat v2, GLint vstride, GLint vorder,
  194.               const GLfloat *points );
  195.  
  196. extern void gl_save_mapgrid1( GLint un, GLfloat u1, GLfloat u2 );
  197.  
  198. extern void gl_save_mapgrid2( GLint un, GLfloat u1, GLfloat u2,
  199.                   GLint vn, GLfloat v1, GLfloat v2 );
  200.  
  201. extern void gl_save_material( GLenum face, GLenum pname,
  202.                   const GLfloat *params );
  203.  
  204. extern void gl_save_multmatrix( const GLfloat *m );
  205.  
  206. extern void gl_save_normal3fv( const GLfloat n[3] );
  207.  
  208. extern void gl_save_normal3f( GLfloat nx, GLfloat ny, GLfloat nz );
  209.  
  210. extern void gl_save_passthrough( GLfloat token );
  211.  
  212. extern void gl_save_pixelmap( GLenum map, GLint mapsize,
  213.                    const GLfloat *values );
  214.  
  215. extern void gl_save_pixelzoom( GLfloat xfactor, GLfloat yfactor );
  216.  
  217. extern void gl_save_pointsize( GLfloat size );
  218.  
  219. extern void gl_save_polygonmode( GLenum face, GLenum mode );
  220.  
  221. extern void gl_save_polygonoffset( GLfloat factor, GLfloat bias );
  222.  
  223. extern void gl_save_popattrib( void );
  224.  
  225. extern void gl_save_popmatrix( void );
  226.  
  227. extern void gl_save_popname( void );
  228.  
  229. extern void gl_save_pushattrib( GLbitfield mask );
  230.  
  231. extern void gl_save_pushmatrix( void );
  232.  
  233. extern void gl_save_pushname( GLuint name );
  234.  
  235. extern void gl_save_rasterpos( const GLfloat v[4] );
  236.  
  237. extern void gl_save_readbuffer( GLenum mode );
  238.  
  239. extern void gl_save_scissor( GLint x, GLint y, GLsizei width, GLsizei height );
  240.  
  241. extern void gl_save_set_boolean( GLboolean *ptr, GLboolean value );
  242.  
  243. extern void gl_save_set_enum( GLenum *ptr, GLenum value );
  244.  
  245. extern void gl_save_set_float( GLfloat *ptr, GLfloat value );
  246.  
  247. extern void gl_save_set_int( GLint *ptr, GLint value );
  248.  
  249. extern void gl_save_set_uint( GLuint *ptr, GLuint value );
  250.  
  251. extern void gl_save_shademodel( GLenum mode );
  252.  
  253. extern void gl_save_stencilfunc( GLenum func, GLint ref, GLuint mask );
  254.  
  255. extern void gl_save_stencilmask( GLuint mask );
  256.  
  257. extern void gl_save_stencilop( GLenum fail, GLenum zfail, GLenum zpass );
  258.  
  259. extern void gl_save_texcoord( const GLfloat tc[4] );
  260.  
  261. extern void gl_save_texenv( GLenum target, GLenum pname,
  262.                             const GLfloat *params );
  263.  
  264. extern void gl_save_texparameter( GLenum target, GLenum pname,
  265.                                   const GLfloat *params );
  266.  
  267. extern void gl_save_texgen( GLenum coord, GLenum pname,
  268.                             const GLfloat *params );
  269.  
  270. extern void gl_save_teximage1d( GLint level, GLint components,
  271.                     GLsizei width, GLint border,
  272.                     const GLubyte *pixels );
  273.  
  274. extern void gl_save_teximage2d( GLint level, GLint components,
  275.                     GLsizei width, GLsizei height, GLint border,
  276.                     const GLubyte *pixels );
  277.  
  278. extern void gl_save_vertex( GLfloat x, GLfloat y, GLfloat z, GLfloat w );
  279.  
  280. extern void gl_save_viewport( GLint x, GLint y, GLsizei width, GLsizei height );
  281.  
  282.  
  283. #endif
  284.